﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CheccCoverplateCulvertAssemble.Entity
{
    public class BasicConstructor
    {
        /// <summary>
        /// 洞身长度
        /// </summary>
        private double basicsLength;
        /// <summary>
        /// 左横向偏置角
        /// </summary>
        private double leftLateralAngle;
        /// <summary>
        /// 右横向偏置角
        /// </summary>
        private double rightLateralAngle;
        /// <summary>
        /// 净跨
        /// </summary>
        private double clearSpan;
        /// <summary>
        /// 净高
        /// </summary>
        private double clearHeight;
        /// <summary>
        /// 涵底坡度
        /// </summary>
        private double culvertBaseSlope;
        /// <summary>
        /// 涵洞交角
        /// </summary>
        private double crossingAngle;
        /// <summary>
        /// 换填深度
        /// </summary>
        private double exchangeFillDepth;
        /// <summary>
        /// 换填长度
        /// </summary>
        private double exchangeFillLength;
        /// <summary>
        /// 换填坡比
        /// </summary>
        private double exchangeFillSlopeRatio;
        /// <summary>
        /// 换填襟边
        /// </summary>
        private double exchangeFillEdge;
        /// <summary>
        /// 涵身沉降缝宽度
        /// </summary>
        private double culvertGapWidth;  
        /// <summary>
        /// 基础沉降缝宽度
        /// </summary>
        private double baseGapWidth;    

        /// <summary>
        /// 挡块高度
        /// </summary>
        private double piecePly;
        /// <summary>
        /// 基础襟边
        /// </summary>
        private double basicsEdge;
        /// <summary>
        /// 台身厚度
        /// </summary>
        private double standPly;
        /// <summary>
        /// 台身顶宽
        /// </summary>
        private double standTopWidth;
        /// <summary>
        /// 底部倒角
        /// </summary>
        private double bottomChamfer;
        /// <summary>
        /// 基础厚度
        /// </summary>
        private double basicsPly;
        /// <summary>
        /// 净保护层
        /// </summary>
        private double protectiveLayer;
        /// 基础宽度
        /// </summary>
        private double basicWidth;

        /// <summary>
        /// 支撑梁长度
        /// </summary>
        private double bracingBeamLength;
        /// <summary>
        /// 支撑梁高度
        /// </summary>
        private double bracingBeamHeight;
        /// <summary>
        /// 支撑梁宽度
        /// </summary>
        private double bracingBeamWidth;
        /// <summary>
        /// 支撑梁主筋边距
        /// </summary>
        private double bracingBeamInterval;
        /// <summary>
        /// 涵长分段
        /// </summary>
        public List<double> CulvertLenLists = new List<double>();


        public double BasicsLength { get => basicsLength; set => basicsLength = value; }
        public double ClearSpan { get => clearSpan; set => clearSpan = value; }
        public double ClearHeight { get => clearHeight; set => clearHeight = value; }
        public double CulvertBaseSlope { get => culvertBaseSlope; set => culvertBaseSlope = value; }
        public double CrossingAngle { get => crossingAngle; set => crossingAngle = value; }
        public double CulvertGapWidth { get => culvertGapWidth; set => culvertGapWidth = value; }
        public double BaseGapWidth { get => baseGapWidth; set => baseGapWidth = value; }
        public double ExchangeFillDepth { get => exchangeFillDepth; set => exchangeFillDepth = value; }
        public double ExchangeFillLength { get => exchangeFillLength; set => exchangeFillLength = value; }
        public double ExchangeFillSlopeRatio { get => exchangeFillSlopeRatio; set => exchangeFillSlopeRatio = value; }
        public double ExchangeFillEdge { get => exchangeFillEdge; set => exchangeFillEdge = value; }
        


        public double LeftLateralAngle { get => leftLateralAngle; set => leftLateralAngle = value; }
        public double RightLateralAngle { get => rightLateralAngle; set => rightLateralAngle = value; }
        public double PiecePly { get => piecePly; set => piecePly = value; }
        public double BasicsEdge { get => basicsEdge; set => basicsEdge = value; }
        public double StandPly { get => standPly; set => standPly = value; }
        public double StandTopWidth { get => standTopWidth; set => standTopWidth = value; }
        public double BottomChamfer { get => bottomChamfer; set => bottomChamfer = value; }
        public double BasicsPly { get => basicsPly; set => basicsPly = value; }
        public double ProtectiveLayer { get => protectiveLayer; set => protectiveLayer = value; }
        public double BasicWidth { get => basicWidth; set => basicWidth = value; }

        public double BracingBeamLength { get => bracingBeamLength; set => bracingBeamLength = value; }
        public double BracingBeamHeight { get => bracingBeamHeight; set => bracingBeamHeight = value; }
        public double BracingBeamWidth { get => bracingBeamWidth; set => bracingBeamWidth = value; }
        public double BracingBeamInterval { get => bracingBeamInterval; set => bracingBeamInterval = value; }
    }
}




